Skip to content

refactor: golf proofs (stacked on #1332)#1364

Draft
Vilin97 wants to merge 26 commits into
leanprover-community:masterfrom
Vilin97:claude/golf-proofs-more
Draft

refactor: golf proofs (stacked on #1332)#1364
Vilin97 wants to merge 26 commits into
leanprover-community:masterfrom
Vilin97:claude/golf-proofs-more

Conversation

@Vilin97

@Vilin97 Vilin97 commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Golfs proofs across Physlib: streamlining arguments, using stronger mathlib lemmas and tactics, removing redundant steps, and increasing code reuse. No statements or definitions are changed — only proofs.

Rebased directly onto master (previously stacked on the now-closed #1332; all of that PR's golfs have been dropped — this PR's diff is exclusively its own work).

Stats

  • Proofs golfed: ~1,343 across 120 files
  • Net line change (proof bodies only): −5,954 (9,369 deletions, 3,415 insertions)
  • Verification: every touched file recompiled with -Dwarn.sorry=false -Dweak.says.verify=true; full lake build green on the rebased tree; every diff hunk lies strictly inside a proof body (statements/definitions byte-identical).

Process disclosure (per AI-POLICY.md)

  • Models: golfing subagents ran on Claude Fable 5 (claude-fable-5) and Claude Opus 4.8 (claude-opus-4-8). One max-reasoning subagent per file, each self-verifying via a per-file lake env lean compile with the CI flags.
  • Wall-clock time: ~39h wall-clock (spanning session-limit resets)
  • Token usage (approximate, output tokens across all agents): ~19M subagent output tokens

Prompt used

Golf AS MUCH AS POSSIBLE in Physlib. Update PR #1364.
Do not change statements, and do not cram tactics on one line. Genuinely make proofs
shorter and simpler by streamlining arguments, increasing mathlib usage, reduce code duplication, increase code reuse, use more powerful tactics, etc. Do not change any statements and definitions - only work on proofs!
Keep RAM usage under 40GB. Be thorough, go project by project carefully. If spawning agents, use max reasoning, and tell them to be very
thorough. DO NOT ASK ME ANYTHING AND DO NOT GIVE UP, KEEP FINDING NEW WAYS TO COMPRESS.
Open a draft PR once you golfed 50 proofs, and then every 10, update the PR. Put
this prompt in the PR description and also model name and how long and how many tokens this golfing process took.

🤖 Generated with Claude Code

https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3

@github-actions

github-actions Bot commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Thank you for this PR, which will now be reviewed. If submitting to ./Physlib or ./QuantumInfo, please see our review guidelines if you are not familiar with the process. You should expect a back and forth with a reviewer before your PR is merged. See also that link for how to add appropriate labels to your PR. The PR will also go through a number of automated checks. You can learn more about these here, including how to run them locally.

If you are submitting to ./PhyslibAlpha there will be a lighter review process, though your PR must still pass the automated checks.

If you want to bring attention to this PR, please write a message on this thread of the Lean Zulip.

Important: If a reviewer adds an awaiting-author label to your PR, once you have addressed the review comments, please remove that label by adding a comment with -awaiting-author. This helps us keep track of reviews.

Vilin97 and others added 23 commits July 6, 2026 21:03
Golf proof bodies in Space/Norm/Basic and Space/IsDistBounded: term-mode
collapses, Tendsto composition in place of manual rpow juggling, and
anonymous-constructor witnesses. Statements unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Golf proof bodies in WickContraction/InsertAndContractNat and Sign/InsertSome:
reuse erase_insert and getDualErase lemmas, replace manual Fin.succAbove case
bashes with omega fed the relevant order couplings. Statements unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Golf proof bodies in Electromagnetism/Dynamics/KineticTerm and
QuantumMechanics SpectralTheory/Basic. Statements unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…oofs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…y, speed-unit proofs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…-field proofs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…e proofs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…ce proofs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…l, rigid-body proofs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…al-ensemble proofs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
@Vilin97 Vilin97 force-pushed the claude/golf-proofs-more branch from 7fe99cd to 587a2c7 Compare July 6, 2026 12:23
Vilin97 and others added 2 commits July 6, 2026 22:23
…e, EM potential proofs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
…st, tensor-constructor proofs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YRA4h6VJRALwaZK1xeUsg3
@Vilin97 Vilin97 force-pushed the claude/golf-proofs-more branch from 1fe17b6 to 456a04a Compare July 6, 2026 23:10
Vilin97 added a commit to Vilin97/physlib that referenced this pull request Jul 6, 2026
Move the remaining Mistral golf from leanprover-community#1364 to leanprover-community#1373: simplify isTotalTimeDerivative_neg, totalTimeDerivative_contDiff, and totalTimeDerivative_hasVarGradientAt_equivalence.

Generated by Mistral Vibe.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>

Co-authored-by: Claude Opus 4.8 <no-reply+claude-opus-4-8@anthropic.com>
Vilin97 added a commit to Vilin97/physlib that referenced this pull request Jul 6, 2026
Move the remaining Mistral golf from leanprover-community#1364 to leanprover-community#1373: simplify isTotalTimeDerivative_neg, totalTimeDerivative_contDiff, and totalTimeDerivative_hasVarGradientAt_equivalence.

Generated by Mistral Vibe.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
Co-authored-by: Claude Opus 4.8 <no-reply+claude-opus-4-8@anthropic.com>
Replace non-terminal broad simp calls with Lean-generated simp only sets and split the long DimSevenPlane simp line reported by the Python style linter.

Co-authored-by: Claude Opus 4.8 <no-reply+claude-opus-4-8@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant